//
//  NSData+LYExtension.h
//  LYExtension
//
//  Created by cqck on 2021/11/8.
//

#import <Foundation/Foundation.h>
#import <UIKit/UIKit.h>

@interface NSData (LYExtension)

/**
 @brief 按照指定存储大小压缩图片

 @param image 待压缩的图片
 @param maxLength 指定压缩的存储大小(单位为byte)
 @return UIImage 压缩后的图片
 */
+ (NSData *)compressImage:(UIImage *)image maxLength:(CGFloat)maxLength;

/**
 @brief 按照指定存储大小压缩GIF图片

 @param gifData 待压缩的GIF原始数据
 @param maxLength 指定压缩的存储大小(单位为byte)
 @return NSData 压缩后的GIF数据
 */
+ (NSData *)compressGIF:(NSData *)gifData maxLength:(CGFloat)maxLength;

/**
 @brief AES加密

 @param encryptKey 加密的key
 @return NSData 加密结果
 */
- (NSData *)lyAES256_encryptWithKey:(NSString *)encryptKey;

/**
 @brief AES解密

 @param decryptKey 解密的key
 @return NSData 解密结果
 */
- (NSData *)lyAES256_decryptWithKey:(NSString *)decryptKey;

/**
 @brief 将NSData转换成base64字符串

 @return NSString 转换后的字符串
 */
- (NSString *)encodeToBase64;

/**
 @brief 将字符串转换成二进制base64

 @return NSString 转换后的字符串
 */
+ (NSData *)dencodeBase64DataString:(NSString *)orginStr;

@end
